/*********************\
* Author:Dzlua
* QQ:505544956
* Time:2017/04/16
\**********************/
#include "LuaRollText.h"

#define CObjPtr ((CRollTextUI*)m_cobj)

namespace DuiLib {

int LuaRollText::SetPos(LuaState *L)
{
    LuaStack args(L);
    RECT rc = LuaHelperNS::GetRect(args[2]);
    CObjPtr->SetPos(rc);
    return 0;
}

int LuaRollText::SetText(LuaState *L)
{
    LuaStack args(L);
    SDTString str = LuaHelperNS::GetTString(args[2]);
    CObjPtr->SetText(str.c_str());
    return 0;
}

int LuaRollText::BeginRoll(LuaState *L)
{
    LuaStack args(L);
    int nDirect = LuaHelperNS::GetRollTextDirect(args[2], ROLLTEXT_RIGHT);
    LONG lTimeSpan = LuaHelperNS::GetLong(args[3], ROLLTEXT_TIMERID_SPAN);
    LONG lMaxTimeLimited = LuaHelperNS::GetLong(args[4], 60);
    CObjPtr->BeginRoll(nDirect, lTimeSpan, lMaxTimeLimited);
    return 0;
}

void LuaRollText::EndRoll()
{
    CObjPtr->EndRoll();
}

SDLUA_BEGIN_REGISTER(LuaRollText, RollText, Label)
    SDLUA_REGISTER_FUN_LUA(LuaRollText, SetPos, SetPos)
    SDLUA_REGISTER_FUN_LUA(LuaRollText, SetText, SetText)
    SDLUA_REGISTER_FUN_LUA(LuaRollText, BeginRoll, BeginRoll)
    SDLUA_REGISTER_FUN_CPP(LuaRollText, EndRoll, EndRoll)

SDLUA_END_REGISTER

SDLUA_BEGIN_UNREGISTER(LuaRollText, RollText)
SDLUA_END_UNREGISTER(RollText)

}

#undef CObjPtr